<HTML>
<FONT FACE=VERDANA SIZE=2 COLOR="#000000">

<HEAD>
	<TITLE>
	Glossary
	</TITLE>
</HEAD>



<DL>
	<DT><A NAME=KWD_><B>
	
	</B></A></DT>

	<DD>

	</DD>
</DL>


<BODY>

	<H3>
	INF Glossary
	</H3>
[<A HREF="#A">A</A>]
[<A HREF="#B">B</A>]
[<A HREF="#C">C</A>]
[<A HREF="#D">D</A>]
[<A HREF="#E">E</A>]
[<A HREF="#F">F</A>]
[<A HREF="#G">G</A>]
[<A HREF="#H">H</A>]
[<A HREF="#I">I</A>]
[<A HREF="#J">J</A>]
[<A HREF="#K">K</A>]
[<A HREF="#L">L</A>]
[<A HREF="#M">M</A>]
[<A HREF="#N">N</A>]
[<A HREF="#O">O</A>]
[<A HREF="#P">P</A>]
[<A HREF="#Q">Q</A>]
[<A HREF="#R">R</A>]
[<A HREF="#S">S</A>]
[<A HREF="#T">T</A>]
[<A HREF="#U">U</A>]
[<A HREF="#V">V</A>]
[<A HREF="#W">W</A>]
[<A HREF="#X">X</A>]
[<A HREF="#Y">Y</A>]
[<A HREF="#Z">Z</A>]

<!!!>
<!!!	Signs	!!!>
<!!!>
<DL>
	<DT><A NAME=KWD_$><B>
	$
	</B></A></DT>

	<DD>$ is a special delimiter used for <B><A HREF="#KWD_Signature">Signature</A></B>s in the <A HREF="#KWD_Version"><B>[Version]</B></A> section of an INF file. The accepted values for a signature are <I>$CHICAGO$</I>, <I>$Windows NT$</I> and <I>$Windows 95$</I>.</DD><P>


	<DT><A NAME=KWD_%><B>
	%
	</B></A></DT>

	<DD>% is a special delimited used to mark <I><A HREF="#KWD_StringToken">string tokens</A></I>. If a <I>%</I> character is intended to be used in a string, it must be doubled (<I>%%</I>).
</DL>

<!!!>
<!!!	A	!!!>
<!!!>
<H3><P><BR><BR><A NAME=A>	A	</A></H3>

<DL>

	<DT><A NAME=KWD_AddReg><B>
	AddReg</A></B>=<I>add-registry-section</I>[<B>,</B><I>add-registry-section</I>]...
	</DT>


		<DD>This directive references one or more INF-writer-defined sections in which new subkeys, possibly with initial value entries, are specified to be written into the registry or in which the value entries of existing keys are modified.
		<P>Each named section referenced by an <B>AddReg</B> directive has the following form:
		<P><B>[</B><I>add-registry-section</I><B>]</B><BR><BR><I>reg-root</I><B>,</B> [<I>subkey</I>]<B>,</B> [<I>value-entry-name</I>]<B>,</B> [<I>flags</I>]<B>,</B> [<I>value</I>]
		<P>An <B><A HREF="KWD_HKR">HKR</A></B> specification in such an add-registry section designates the <B>..Class\</B><I>SetupClassGUID</I><B>\</B><I>device-instance-id </I>registry path to the user-accessible driver (a.k.a. "software" key). 
		</DD>
		
		<DD><P>
		Please note the importance of the commas - ignoring one would cause erroneous entries/values to appear in the registry.
		</DD>

		<DL>
		<DT><B><P>
		See Also
		</B></DT>

			<DD><B><A HREF="RP_INFDEF_DDINSTALL.HTML#KWD_AddReg">
			AddReg
			</A></B> directives in the INF, <B><A HREF="#KWD_RegKeys">
			Registry Keys</A></B>,
			<A HREF="#KWD_HKR"><B>HKR</A></B>
			entries in the <B>Glossary</B>.</DD>
		</DL>
</DL>

<DL>
	<DT><B><A NAME=KWD_AddService>
	</B></A></DT>

	<DD>
	</DD>
</DL>


<!!!>
<!!!	B	!!!>
<!!!>
<H3><P><BR><BR><A NAME=B>	B	</A></H3>


<!!!>
<!!!	C	!!!>
<!!!>
<H3><P><BR><BR><A NAME=C>	C	</A></H3>
<DL>
	<DT><B><A NAME=KWD_Class>
	Class</A>=</B><I>class-name</I>
	</DT>

	<DD>For any standard type of device, this specifies the class name, such as one of the system-defined class names like <B>Net</B> or <B>Display</B> as listed in <I>devguid.h</I>, for the type of device to be installed from this INF file. 
	<P>If an INF specifies a <B>Class</B> it should also specify the corresponding system-defined GUID value for its <B>ClassGUID</B> entry. Specifying the matching GUID value for a device of any predefined device setup class can install such a device and its driver(s) faster since this helps the system setup code to optimize its INF searching. 
	<DL>
		<DT><P><B>See Also</B></DT>
		<DD><A HREF="AC97SMPL.HTML#LP_CLS_DEF" TARGET="LP_INFSRC"><B>Class</B></A> entry in the INF,
		<B><A HREF="RP_INFDEF_VERDEF.HTML#KWD_Class">Class</A></B> value described.
		</DD>
	</DL>
</DL>

<DL>
	<DT><B><A NAME=KWD_ClassGUID>
	ClassGUID
	</A> = {</B><I>nnnnnnnn</I><B>-</B><I>nnnn</I><B>-</B><I>nnnn</I><B>-</B><I>nnnn</I><B>-</B><I>nnnnnnnnnnnn</I><B>}</B></DT>

	<DD>
	Specifies the device-class GUID, formatted as shown here, where each <I>n</I> is a hexadecimal digit. 
	<P>For a Windows&nbsp;2000 device/driver(s) INF, such a GUID value determines the device (setup) class subkey in the registry <B>...\Class</B> tree under which to write registry information for the driver(s) of device(s) installed from this INF file. This class-specific GUID value also identifies the device-class installer for the type of device and class-specific property-page provider, if any. 
	<P>For a new device setup class, the INF must specify a newly generated <B>ClassGUID</B> value. For more information about creating GUIDs, see the <I>Setup, Plug &amp; Play, and Power Management Design Guide</I> in the Windows 2000 DDK.
	</DD>
</DL>


<DL>
	<DT><P><BR><B><A NAME=KWD_CtrlFlag>
	[ControlFlags]
	</A></B><BR>&nbsp;<BR></DT>

	<DD><B>ExcludeFromSelect=*</B> | <BR>
	<B>ExcludeFromSelect=</B><I>hw-id</I>[<B>,</B><I>hw-id</I>] ... <BR>
	[<B>ExcludeFromSelect.nt=</B><I>hw-id</I>[<B>,</B><I>hw-id</I>] ...]<BR>
	[<B>ExcludeFromSelect.ntx86=</B><I>hw-id</I>[<B>,</B><I>hw-id</I>] ...]<BR>
	[<B>CopyFilesOnly=</B><I>hw-id</I>[<B>,</B><I>hw-id</I>] ...]<BR>
	[<B>InteractiveInstall</B>=<I>hw-id</I>[,<I>hw-id</I>] ... ]<BR>
	</DD>

	<DD><P>Typically, a <B>ControlFlags</B> section has one or more <B>ExcludeFromSelect</B> entries to control which device(s) listed in the per-manufacturer <I>Models</I> section of INF file will not be displayed to the end user as options during manual installations. </DD>
	<DD><P>INFs that install exclusively PnP devices also have this section unless they set the <B>NoInstallClass</B> value entry in their respective <I>SetupClassGUID</I> keys to TRUE, as already described in the reference for the <B>ClassInstall32</B> section.</DD>

	<DD><P><B>Entry Values</B></DD>

	<DL>
		<DT><P><B><A NAME=KWD_XCLUDEFROMSELECT>
		ExcludeFromSelect
		</A></B></DT>
			<DD>Removes all (<B>*</B>) or the specified list of devices from the display shown to the end user, from which that user is expected to select a particular device for installation. To exclude a set of OS-incompatible or platform-incompatible devices from this display, one or more <B>ExcludeFromSelect</B> entries can have the following system-defined (and case-insensitive) extensions appended:

		<DL>
			<DT><B>.nt</B></DT>
				<DD>Do not display these device(s) on computers running Windows&nbsp;2000.</DD>

			<DT><B>.ntx86</B></DT>
				<DD>Do not display these device(s) on x86-based computers running Windows&nbsp;2000.</DD>
		</DL>
		</DD>

		<DT><P><I>hw-id</I></DT>
			<DD>Identifies a device that is specified in the per-manufacturer <I>Models</I> section of the INF file. Each such <I>hw-id</I> value in a given entry must be separated from the next with a comma (<B>,</B>). </DD>

		<DT><P><B>CopyFilesOnly</B></DT>
			<DD>Installs only the INF-specified files for the given device(s) because the device hardware is not accessible or available yet. This entry is rarely used. However, it can be used to preinstall the driver(s) of a device for which the card will later be seated in a particular slot that is currently in use. For example, if a device currently seated in the particular slot is necessary to transfer INF-specified files to the target, the INF would have this entry. </DD>

		<DT><P><B>InteractiveInstall</B></DT>
			<DD>Forces the specified list of devices to be installed in a user's context. Each line can specify one or more hardware or compatible IDs and there can be one or more lines. 
			<P>This entry is optional. The preferred way to install devices is to omit this entry and allow Setup to install the device in the context of a trusted system thread, if possible. However, if a device absolutely requires a user to be logged in when the device is installed, include this entry in the device INF. This entry is not supported on Windows 9x systems. 
			</DD>

		<DT><P><B>See Also</B></DT>
			<DD><B><A HREF="AC97SMPL.HTML#LP_CTRLFLAG_SECT" TARGET="LP_INFSRC">[ControlFlags]</A></B> section in the INF file, <B><A HREF="RP_INFDEF_CTRLFLAG.HTML">[ControlFlags]</A></B> section described.</DD>

	</DL>
</DL>



<DL>

	<DT><B><P><BR><A NAME=KWD_CopyFiles>
	CopyFiles
	</A>=@</B><I>filename</I> | <I>file-list-section</I>[<B>,</B><I>file-list-section</I>] ...</DT>

		<DD>This directive either specifies one named file to be copied from the source media to the destination or references one or more INF-writer-defined sections in which device-relevant file(s) on the source media are specified for transfer to the destination. The <B>CopyFiles</B> directive is optional, but is present in most <I><B>DDInstall</B></I> sections.
		<P>The <B>DefaultDestDir</B> entry in the <B><A HREF="#KWD_DestDir">DestinationDirs</A></B> section of the INF specifies the destination for any single file to be copied. The <B><A HREF="#KWD_SrcDisksNames">SourceDisksNames</A></B> and <B><A HREF="#KWD_SrcDisksFiles">SourceDisksFiles</A></B> sections, or an additional INF specified in the <B><A HREF="#KWD_LayoutFile">LayoutFile</A></B> entry of this INF's <B><A HREF="#KWD_Version">Version</A></B> section, provides the location on the distribution media of the driver file(s). 
		</DD>
	
		<DL>

			<DT><B><P>See Also</B></DT>
				<DD><B><A HREF="RP_INFDEF_DDInstall.HTML#KWD_CopyFiles">CopyFiles</A></B> directives in the INF.</DD>
		</DL>
</DL>


<!!!>
<!!!	D	!!!>
<!!!>
<H3><P><BR><BR><A NAME=D>	D	</A></H3>

<DL>

	<DT><P><B><A NAME=KWD_DDInstall>
	[<I>DDInstall</I>]</A> | <BR>[<I>DDInstall</I>.nt] | <BR>[<I>DDInstall</I>.ntx86] 
	<BR>&nbsp;</B><BR></DT>

	<DD>
	[<B><A HREF="#KWD_DriverVer">DriverVer</A>=</B><I>mm/dd/yyyy</I>[<B>,</B><I>x.y.v.z</I>] ]<BR>
	[<B><A HREF="#KWD_CopyFiles">CopyFiles</A>=@</B><I>filename</I> | <I>file-list-section</I>[<B>,</B><I>file-list-section</I>] ...]<BR>
	<B><A HREF="#KWD_AddReg">AddReg</A>=</B><I>add-registry-section</I>[<B>,</B><I>add-registry-section</I>]...<BR>
	[<B><A HREF="#KWD_Include">Include</A>=</B><I>filename</I><B>.</B><I>inf</I>[<B>,</B><I>filename2</I><B>.</B><I>inf</I>]...]<BR>
	[<B><A HREF="#KWD_Needs">Needs</A>=</B><I>inf-section-name</I>[<B>,</B><I>inf-section-name</I>]...]<BR>
	[<B><A HREF="#KWD_DelFiles">Delfiles</A>=</B><I>file-list-section</I>[<B>,</B><I>file-list-section</I>]...]<BR>
	[<B>Renfiles=</B><I>file-list-section</I>[<B>,</B><I>file-list-section</I>]...]<BR>
	[<B>DelReg=</B><I>del-registry-section</I>[<B>,</B><I>del-registry-section</I>]...]<BR>
	[<B>BitReg=</B><I>bit-registry-section</I>[<B>,</B><I>bit-registry-section</I>]...]<BR>
	[<B>LogConfig=</B><I>log-config-section</I>[<B>,</B><I>log-config-section</I>]...]<BR>
	[<B>ProfileItems=</B><I>profile-items-section</I>[<B>,</B><I>profile-items-section</I>]...]<BR>
	[<B>UpdateInis=</B><I>update-ini-section</I>[<B>,</B><I>update-ini-section</I>]...]<BR>
	[<B>UpdateIniFields=</B><I>update-inifields-section</I>[<B>,</B><I>update-inifields-section</I>]...]<BR>
	[<B>Ini2Reg=</B><I>ini-to-registry-section</I>[<B>,</B><I>ini-to-registry-section</I>]...]<BR>
	 ...</DD>

	<P>Each per-Models <I>DDInstall</I> section contains an optional <B>DriverVer</B> entry and one or more directives referencing additional named sections in the INF file, shown here with the most commonly specified INF directives, <B>CopyFiles</B> and <B>AddReg</B>, listed first. The sections referenced by these directives contain instructions for installing driver files and writing any device-specific and/or driver-specific information into the registry. </P>


	<DL>
		<DT><B>Directives and Entries</B></DT>

		<DT><B><P><A NAME=KWD_RenFiles>RenFiles</A>=</B><I>file-list-section</I>[<B>,</B><I>file-list-section</I>]...</DT>
			<DD>This directive references one or more INF-writer-defined sections listing file(s) to be renamed on the destination before device-relevant source files are copied to the target machine. Typically, this directive is used only in INFs that upgrade a previous installation to "save" previously installed files on the target machine from being overwritten.</DD>

		<DT><B><P><A NAME=KWD_DelReg>DelReg</A>=</B><I>del-registry-section</I>[<B>,</B><I>del-registry-section</I>]...</DT>
			<DD>This directive references one or more INF-writer-defined sections in which keys and/or value entries are specified to be removed from the registry during installation of the device(s). 
			<P>Typically, this directive is used to handle upgrades when an INF must clean up old registry entries from a previous installation of this device. An <B>HKR</B> specification in such a delete-registry section designates the <B>..Class\</B><I>SetupClassGUID</I><B>\</B><I>device-instance-id</I> registry path to the user-accessible driver (a.k.a. "software" key).</DD>

		<DT><B><P><A NAME=KWD_BitReg>BitReg</A>=</B><I>bit-registry-section</I>[<B>,</B><I>bit-registry-section</I>]...</DT>
			<DD>This directive references one or more INF-writer-defined sections in which existing registry value entries of type REG_BINARY are modified. (See also <B>AddReg</B>.) An <B>HKR</B> specification in such a bit-registry section designates the <B>..Class\</B><I>SetupClassGUID</I><B>\</B><I>device-instance-id</I> registry path to the user-accessible driver (a.k.a. "software" key). </DD>

		<DT><B><P><A NAME=KWD_LogConfig>LogConfig</A>=</B><I>log-config-section</I>[<B>,</B><I>log-config-section</I>]...</DT>
			<DD>This directive references one or more INF-writer-defined sections within an INF for a root-enumerated device or for a manually installed device. In these named sections, the INF for such a "detected" or manually installed device specifies one or more logical configurations of bus-relative hardware resources that the device must have to be operational. The INF for such a manually installed device that is not software-configurable also should have a <I>DDInstall</I><B>.FactDef</B> section. 
			<P>The <B>LogConfig</B> directive is never used to install PnP peripheral devices, but, for more information about using a <I>DDInstall</I><B>.LogConfigOverride</B> section to override the hardware resource requirements reported by the underlying bus, see the reference for this directive later in this chapter. 
			<P>This directive is irrelevant to all higher level (nondevice) drivers and components.</DD>

		<DT><B><P><A NAME=KWD_ProfileItems>ProfileItems</A>=</B><I>profile-items-section</I>[<B>,</B><I>profile-items-section</I>]...</DT>
			<DD>This directive references one or more INF-writer-defined sections that describe items to be added to, or removed from, the Start menu.
			<P>This directive is only supported on Windows&nbsp;2000 platforms.</DD>

		<DT><B><P><A NAME=KWD_UpdateIni>UpdateInis</A>=</B><I>update-ini-section</I>[<B>,</B><I>update-ini-section</I>]...</DT>
			<DD>This rarely used directive references one or more INF-writer-defined sections, specifying a source INI file from which a particular section or line within such a section is to be read into a destination INI file of the same name during installation. Optionally, line-by-line modifications to an existing INI file on the destination from a given source INI file of the same name can be specified in the update-ini section.</DD>
		
		<DT><B><P><A NAME=KWD_UpdateIniField>UpdateIniFields</A>=</B><I>update-inifields-section</I>[<B>,</B><I>update-inifields-section</I>]...</DT>
			<DD>This rarely used directive references one or more INF-writer-defined sections in which modifications within the lines of a device-specific INI file are specified. </DD>

		<DT><B><P><A NAME=KWD_Ini2Reg>Ini2Reg</A>=</B><I>ini-to-registry-section</I>[<B>,</B><I>ini-to-registry-section</I>]...</DT>
			<DD>This rarely used directive references one or more INF-writer-defined sections in which sections or lines from a device-specific INI file, supplied on the source media, are to be moved into the registry. </DD>

		<DT><B><P>See Also</B></DT>
			<DD><B><A HREF="AC97SMPL.HTML#LP_DDINSTALL_SECT" TARGET="LP_INFSRC">[AC97SMPL]</A></B> section in the INF, <B><A HREF="RP_INFDEF_DDINSTALL.HTML">[<I>DDInstall</I>]</A></B> section described.</DD>
	</DL>

</DL>


<DL>
	<DT><P><BR><BR><B><A NAME=KWD_DDInstallInterfaces>
	[<I>DDInstall</I>.Interfaces]</B> |<BR><B>
	[<I>DDInstall</I>.nt.Interfaces]</B> | <BR><B>
	[<I>DDInstall</I>.ntx86.Interfaces]</B> <BR>&nbsp;<BR>

		<DD><B>AddInterface={</B><I>interfaceGUID</I><B>} </B>[<B>, </B>[<I>reference&nbsp;string</I>] [<B>,</B>[<I>add-interface-section</I>] [<B>,</B><I>flags</I>]]] ...</DD>
		<DD>[<B><A HREF="#KWD_Include">Include</A>=</B><I>filename</I><B>.</B><I>inf</I>[<B>,</B><I>filename2</I><B>.</B><I>inf</I>]...]</DD>
		<DD>[<B><A HREF="#KWD_Needs">Needs</A>=</B><I>inf-section-name</I>[<B>,</B><I>inf-section-name</I>]...]</DD>

		<DD><P>Each per-Models <I>DDInstall</I><B>.Interfaces</B> section can have one or more <B>AddInterface</B> directives, depending on how many predefined device interfaces a particular device/driver supports and/or how many new (and compatible with existing) device interfaces the driver(s) of that device export for use by still higher level components.</DD>
		<DD><P>To support existing device interfaces, such as any of the system's predefined kernel-streaming interfaces, specify the appropriate <I>interfaceGUID</I> value(s) in this section. To install a component, such as a class driver, that exports a whole new class of device interfaces, an INF also must have an <B>InterfaceInstall32</B> section.</DD>

		<DD><P><B>Directives and Entries</B></DD>

		<DL>
			<DT><P><B><A NAME=KWD_AddInterface>
			AddInterface
			</A>={</B><I>interfaceGUID</I><B>}</B> [<B>,</B> [<I>reference&nbsp;string</I>] [<B>,</B>[<I>add-interface-section</I>] [<B>,</B><I>flags</I>]]] ...</DT>
			
				<DD>This directive installs support for a device interface, designated by the given <I>interfaceGUID</I> value, that the device/driver exports to higher level components. Usually, it also references an INF-writer-defined <I>add-interface-section</I> elsewhere in the INF file.The <B>{</B><I>interfaceGUID</I><B>}</B> and/or (rarely specified) <I>reference-string</I> can be expressed as <B>%</B><I>strkey</I><B>%</B> tokens that are defined in a <B>Strings</B> section of the INF file. The INF of a PnP device function or filter driver usually omits the optional <I>reference&nbsp;string</I> entry unless that driver uses reference strings to discriminate between two interfaces of the same class for a single device. The <I>flags</I>, if specified, must be zero. 
				<P>An <I>add-interface-section</I> typically references an add-registry section that contains value entries to be stored in the registry about the interface(s) supported by the device/driver. An <B>HKR</B> specified in such an add-registry section designates the user-accessible device-interface subkey of the <B>..DeviceClasses\{</B><I>InterfaceClassGuid</I><B>}\</B> registry branch. In the Windows&nbsp;2000 registry, <B>DeviceClasses</B> is a subkey of the <B>..CurrentControlSet\Control</B> key. 
				</DD>

				<DD><I><P>See Also the </I><B><A HREF="RP_INFDEF_INTRFCS.HTML#KWD_AddInterface">AddInterface</A></B><I> entries in the INF.</I></DD>

	
			<DT><B><P>See Also</B></DT>
				<DD><B><A HREF="AC97SMPL.HTML#LP_INTRFCS_SECT" TARGET="LP_INFSRC">
				[AC97SMPL.Interfaces]
				</A></B>, <B><A HREF="AC97SMPL.HTML#LP_INTRFCSDEC_SECT" TARGET="LP_INFSRC">
				[AC97SMPL.NTX86.Interfaces]
				</A></B> sections in the INF, <B><A HREF="RP_INFDEF_INTRFCS.HTML">
				[<I>DDInstall</I>.Interfaces]
				</A></B> section described.</DD>
		
		</DL>

</DL>


<DL>

	<DT><P><BR><BR><B><A NAME=KWD_DDInstallServices>
	[<I>DDInstall</I>.Services]</A></B> |<BR><B>
	[<I>DDInstall</I>.nt.Services]</B> |<BR><B>
	[<I>DDInstall</I>.ntx86.Services]</B> <BR>&nbsp;<BR>

		<DD><B>AddService</A>=</B><I>ServiceName</I><B>,</B>[<I>flags</I>]<B>,</B><I>service-install-section</I>[<B>,</B><I>event-log-install-section</I>[<B>,</B>[<I>EventLogType</I>][<B>,</B><I>EventName</I>]]]...</DD>
		<DD>[<B>DelService=</B><I>ServiceName</I>[<B>,</B>[<I>flags</I>][<B>,</B>[<I>EventLogType</I>][<B>,</B><I>EventName</I>]]]...</DD>
		<DD>[<B><A HREF="#KWD_Include">Include</A>=</B><I>filename</I><B>.</B><I>inf</I>[<B>,</B><I>filename2</I><B>.</B><I>inf</I>]...]</DD>
		<DD>[<B><A HREF="#KWD_Needs">Needs</A>=</B><I>inf-section-name</I>[<B>,</B><I>inf-section-name</I>]...]</DD>

		<DD><P>Each per-<I>Models</I> <I>DDInstall</I><B>.Services</B> section contains one or more <B>AddService</B> directives referencing additional INF-writer-defined section(s) in a Windows&nbsp;2000 INF file.</DD>
		<DD><P>Windows&nbsp;2000 INFs commonly use the <I>DDInstall</I><B>.Services</B> section with at least one <B>AddService</B> directive to control how and when the services of a particular driver are loaded, any dependencies on other services or on underlying (legacy) drivers it might have, and so forth. Optionally, they set up event-logging services by the device driver(s) as well. </DD>
		<DD><I>DDInstall</I><B>.Services</B> sections should have the same platform and OS <A HREF="#KWD_DecoratedName">decoration</A>s as their related <I>DDInstall</I> sections. For example, a <I>DDInstall</I><B>.ntx86</B> section would have a corresponding <I>DDInstall</I><B>.ntx86.Services</B> section.</DD>
		<DD>This section is irrelevant to exclusively Windows&nbsp;9x installations. </DD>

		<DD><P><B>Directives and Entries</B></DD>

		<DL>
			<DT><P><B><A NAME=KWD_AddService>AddService</A>=</B><I>ServiceName</I><B>,</B>[<I>flags</I>]<B>,</B><I>service-install-section</I>[<B>,</B><I>event-log-install-section</I>[<B>,</B>[<I>EventLogType</I>][<B>,</B><I>EventName</I>]]]...</DT>
				<DD>This directive references an INF-writer-defined <I>service-install-section</I> and, possibly, an <I>event-log-install-section</I> elsewhere in the INF file for the driver(s) of the device(s) covered by this <I>DDInstall</I> section. </DD>

			<DT><P><B><A NAME=KWD_DelService>DelService</A>=</B><I>ServiceName</I>[<B>,</B>[<I>flags</I>][<B>,</B>[<I>EventLogType</I>][<B>,</B><I>EventName</I>]]]...</DT>
				<DD>This directive removes a previously installed service from the target machine. This directive is very rarely used, except possibly in an INF file that upgrades a previous installation of the same devices/models listed in the per-manufacturer per-<I>Models</I> section that defined the name of this <I>DDInstall</I> section. </DD>

			<DT><P><B>See Also</B></DT>
				<DD><B><A HREF="AC97SMPL.HTML#LP_SVC_SECT" TARGET="LP_INFSRC">[AC97SMPL.Services]</A></B>, <B><A HREF="AC97SMPL.HTML#LP_SVCDEC_SECT" TARGET="LP_INFSRC">[AC97SMPL.NTX86.Services]</A></B> sections in the INF, <B><A HREF="RP_INFDEF_SVCS.HTML">[<I>DDInstall</I>.Services]</A></B> section described.</DD>
		</DL>


</DL>


<DL>
	<DT><P><BR><BR><A NAME=KWD_DecoratedName><B><I>
	Decorated name
	</I></B></A></DT>

	<DD>
	<I>(or Decorated section name)</I>
	An INF file section whose name contains a suffix that identifies a particular platform and/or OS. For example, [SourceDisksNames.x86] and [aha154x.ntx86] are examples of decorated sections. Decorated sections contain installation information that is only relevant to the platform and/or OS specified by the suffix. 
	</DD><P><BR><BR>
</DL>


<DL>
	<DT><A NAME=KWD_DelFiles><B>
	DelFiles
	</A>=</B><I>file-list-section</I>[<B>,</B><I>file-list-section</I>]...</DT>

	<DD>This directive references one or more INF-writer-defined sections listing file(s) on the target to be deleted. In general, this directive is used only in INFs that upgrade a previous device/driver installation to remove obsolete files from the target machine. </DD>

</DL>


<DL>
	<DT><P><BR><BR><B><A NAME=KWD_DestDir>
	[DestinationDirs]
	</A></B></DT>

		<DD><P>
		[<B>DefaultDestDir=</B><I>dirid</I>[<B>,</B><I>subdir</I>]] <BR>
		[<I>file</I>-<I>list</I>-<I>section</I><B>=</B><I>dirid</I>[<B>,</B><I>subdir</I>]] ... <BR></DD>

		<DD><P>A <B>DestinationDirs</B> section specifies the target destination directory or directories for all copy, delete, and/or rename operations on files referenced by name elsewhere in the INF file. </DD>
		<DD><P>This section is required in any INF that uses a <A HREF="#KWD_CopyFiles"><B>CopyFiles</B></A> directive or that references a <I>file-list-section</I>, whether with a <A HREF="#KWD_CopyFiles"><B>CopyFiles</B></A>, <A HREF="#KWD_DelFiles"><B>DelFiles</B></A>, or <B>RenFiles</B> directive. </DD>

		<DD><P><B>Entry Values</B></DD>

		<DL>
			<DT><P><B>DefaultDestDir=</B><I>dirid</I>[<B>,</B><I>subdir</I>]] </DT>
				<DD>Specifies the default destination directory for all copy, delete, and/or rename operations on files that are not explicitly listed in a <I>file-list-section</I> referenced by other entries here. </DD>

		<DT><I>file-list-section</I></DT>
			<DD>Specifies the INF-writer-determined name of a section referenced by a <B>CopyFiles</B>, <B>RenFiles</B>, or <B>DelFiles</B> directive elsewhere in the INF file. Such an entry is optional if this section has a <B>DefaultDestDir</B> entry and all copy-file operations specified in this INF have the same target destination. However, any <I>file-list-section</I> referenced by a <B>RenFiles</B> or <B>DelFiles</B> directive elsewhere in the INF must be listed here. </DD>

		<DT><I>dirid</I></DT>
			<DD>Specifies the directory identifier of the target directory for operations on files that are referenced by name, possibly within a named <I>file-list-section</I> of the INF. 
			<DD><BR>For instance :
			<P>12 = Drivers directory; equivalent to <I>%windir%\system32\drivers</I> on Windows 2000 and to <I>%windir%\system\IOSubsys</I> on Win9x platforms.</TD>
			<P>10 = Windows directory; equivalent to <I>%windir%</I> on both platforms.
			<P>See the Reference/Setup/INF DestinationDirs section in the Windows 2000 DDK for a complete list of these values.

		<DL>
			<DT><P><B>See Also</B></DT>
				<DD><B><A HREF="AC97SMPL.HTML#LP_DESTDIR_SECT" TARGET="LP_INFSRC">[DestinationDirs]</A></B> section in the INF, <B><A HREF="RP_INFDEF_DESTDIR.HTML">[DestinationDirs]</A></B> section described.</DD>
		</DL>

	</DL>


</DL>


<DL>
	<DT><P><BR><BR><A NAME=KWD_DevSetupClass><B>
	Device setup classes
	</B></A></DT>

	<DD>Devices that follow similar installation procedures are grouped in device setup classes. Microsoft defines setup classes for most of the devices. IHVs and OEMs can create their own new classes only if the none of the current set of classes apply. A GUID is associated with each class; the GUIDs of the system-defined device setup classes are defined in <I>devguid.h</I> and have the symbolic names of the form GUID_DEVCLASS_xxx.
	<P>For instance, this is the class that includes the Audio and DVD multimedia devices, joystick ports, and full-motion video-capture devices.</DD>

	<DL>
		<DT><P>Multimedia</DT>
			<DD>Class = Media</DD>
			<DD>ClassGuid = {4d36e96c-e325-11ce-bfc1-08002be10318}</DD>
	</DL>

</DL>

<DL>
	<DT><P><BR><BR><B><A NAME=KWD_DriverVer>
	DriverVer</A>=</B><I>mm/dd/yyyy</I>[<B>,</B><I>x.y.v.z</I>]
	</DT>

	<DD>This optional entry specifies version information for the driver package.
	<P>The <I>mm/dd/yyyy</I> value specifies the date of the driver package, including the driver files and the INF. This date should be the most recent date of any file in the driver package. A hyphen (-) can be used as the date field separator in place of the slash (/). 
	<P>The <I>x.y.v.z</I> specifies an optional version number. This value is for display purposes only (for example, in the Device Manager). The OS does not use this value for driver selection. 
	<P>When the OS searches for drivers, it chooses a driver with a more recent <B>DriverVer</B> date over a driver with an earlier date. If an INF has no <B>DriverVer</B> entry or is unsigned, the OS applies the default date of 00/00/0000. 
	<P>A Windows&nbsp;2000 INF should have a <B>DriverVer</B> entry in its <B>Version</B> section and/or in the individual <I>DDInstall</I> sections. If there is a <B>DriverVer</B> entry in a <I>DDInstall</I> section, the OS uses that entry instead of the one in the <B>Version</B> section for that particular device.
	<P>Windows 98 does not recognize a <B>DriverVer</B> entry in the <B>Version</B> section. Therefore, an INF that will be used on Windows 98 should have <B>DriverVer</B> entries in the undecorated <I>DDInstall</I> sections that are used by Windows 98. 
	</DD>

	<DL>
		<DT><P><B>See Also</B></DT>
			<DD><B><A HREF="AC97SMPL.HTML#LP_DRVVER_DEF" TARGET="LP_INFSRC">DriverVer</A></B> entry in the INF.</DD>			
	</DL>

</DL>


<!!!>
<!!!	E	!!!>
<!!!>
<H3><P><BR><BR><A NAME=E>	E	</A></H3>
<DL>
<dt><b><A NAME=KWD_ExcludeId>
		ExcludeID</A></b>=<i>device-identification-string</i>[<b>,</b><i>device-identification-string</i>]...</dt>
        	<dd>(<i>Windows XP and later</i>.) This directive specifies one or more 
	        device identification strings (either hardware IDs or compatible IDs). The <i>
	        DDInstall</i> section will not install devices having device IDs that match any of 
	        the hardware IDs or compatible IDs listed.<br>
            &nbsp;</dd>
</DL>




<!!!>
<!!!	F	!!!>
<!!!>
<H3><P><BR><BR><A NAME=F>	F	</A></H3>




<!!!>
<!!!	G	!!!>
<!!!>
<H3><P><BR><BR><A NAME=G>	G	</A></H3>




<!!!>
<!!!	H	!!!>
<!!!>
<H3><P><BR><BR><A NAME=H>	H	</A></H3>


<!!!>
<!!!	I	!!!>
<!!!>
<H3><P><BR><BR><A NAME=I>	I	</A></H3>

<DL>

	<DT><B><A NAME=KWD_Include>
	Include
	</A>=</B><I>filename</I><B>.</B><I>inf</I>[<B>,</B><I>filename2</I><B>.</B><I>inf</I>]...</DT>

		<DD>This optional entry specifies one or more additional named INF files containing sections needed to install this device and/or driver. If this entry is specified, usually so is a <B><A HREF="#KWD_Needs">Needs</A></B> entry. 
		<P>For example, the system INFs for device drivers that depend on the system's kernel-streaming support specify this entry as <BR>
		<B>Include= ks.inf</B>[<B>, </B>[<B>kscaptur.inf,</B>] [<B>ksfilter.inf</B>]]. 
		</DD>

	<DL>
		<DT><B><P>See Also</B></DT>
			<DD><B><A HREF="AC97SMPL.HTML#LP_INCLUDE_DEF" TARGET="LP_INFSRC">Include</A></B> directive in the INF.</DD>
	</DL>

</DL>


<!!!>
<!!!	J	!!!>
<!!!>
<H3><P><BR><BR><A NAME=J>	J	</A></H3>




<!!!>
<!!!	K	!!!>
<!!!>
<H3><P><BR><BR><A NAME=K>	K	</A></H3>



<!!!>
<!!!	L	!!!>
<!!!>
<H3><P><BR><BR><A NAME=L>	L	</A></H3>
<DL>
	<DT><A NAME=KWD_LayoutFile><B>
	LayoutFile</A>=</B><I>filename</I><B>.inf</B><I> </I>[<B>,</B><I>filename</I><B>.inf</B>]...
	</DT>
	
	<DD>
	Specifies one or more additional system-supplied INF files that contain layout information on the source media required for installing the software described in this INF. All system-supplied INFs specify this entry, but IHV/OEM-supplied INFs do not. 
	<P>INF files that are not distributed with the OS itself must omit this entry and have <A HREF="AC97SMPL.HTML#LP_SRCDSKNM_SECT" TARGET="LP_INFSRC"><B>SourceDisksNames</A></B> and <B><A HREF="AC97SMPL.HTML#LP_SRCDSKFL_SECT" TARGET="LP_INFSRC">SourceDisksFiles</A></B> sections instead. By convention, these two sections follow the <B><A HREF="AC97SMPL.HTML#LP_VER_SECT" TARGET="LP_INFSRC">Version</A></B> section. 
</DL>


<!!!>
<!!!	M	!!!>
<!!!>
<H3><P><BR><BR><A NAME=M>	M	</A></H3>

<DL>
	<DT><P><BR><BR><A NAME=KWD_Manufacturer><B>
	[Manufacturer]
	</A></B><BR>&nbsp;<BR></DT>

	<DD><I>manufacturer</I>-<I>name</I><BR>
	[<I>manufacturer</I>-<I>name</I>] ... | <BR>
	<B>%</B><I><A HREF="#KWD_StringToken">strkey</A></I><B>%=</B><I><A HREF="#KWD_Models">models-section-name</A></I><BR>
	[<B>%</B><I>strkey</I><B>%=</B><I>models-section-name</I>] ...<BR>
	 </P></DD>

	<P>The <B>Manufacturer</B> section identifies the manufacturer of one or more devices that can be installed using the INF file. It also defines the [<I><A HREF="#KWD_Models"><B>Models</B></A></I>] section name for the installation of that manufacturer's devices and their driver(s). </P>

	<DL>
		<DT><B>Entries and values</B></DT>

		<DT><P><I>manufacturer-name</I></DT>
		<DD>Identifies the device(s)' manufacturer and the corresponding <I>Models</I> section elsewhere in the INF. Each such entry must uniquely identify the manufacturer within the INF file. However, an entry specified in this manner cannot be localized.</DD>


		<DT><I>strkey</I></DT>
		<DD>Specifies a token, unique within the INF, representing the name of a manufacturer. Each such <B>%</B><I>strkey</I><B>%</B> token must be defined in a <B>Strings</B> section of the INF file.</DD>


		<DT><I><A HREF="#KWD_MOdels">models-section-name</A></I></DT>
		<DD>Specifies an INF-writer-defined name for the per-manufacturer <I>Models</I> section within the INF file. This value must be unique within the INF.
		</DD>

		
		<DT><P><B>See Also</B></DT>
		<DD><B><A HREF="AC97SMPL.HTML#LP_MFTR_SECT" TARGET="LP_INFSRC">[Manufacturer]</A></B> section in the INF, <B><A HREF="RP_INFDEF_MFTR.HTML">[Manufacturer]</A></B> section described.</DD>
	</DL>
</DL>




<DL>
	<DT><P><BR><BR><A NAME=KWD_Models><B>[<I>
	Models
	</I>]</B></A><BR>&nbsp;<BR></DT>

	<DD><I>device-description</I><B> = </B><I>install-section-name</I><B>, </B><I>hw-id</I>[<B>, </B><I>compatible-id</I>...]<BR>
	[<I>device-description</I><B> = </B><I>install-section-name</I><B>, </B><I>hw-id</I>[<B>, </B><I>compatible-id</I>]...] ...<BR>
	</DD>

	<DD><P>A per-manufacturer <I>Models</I> section identifies at least one device, references the <A HREF="#KWD_DDInstall"><B>[<I>DDInstall</I>]</B></A> section of the INF file for that device, and specifies a unique-to-the-INF hardware identifier for that device. Any entry in the per-manufacturer <I>Models</I> section also can specify one or more additional device ID(s) for model(s) compatible with the device designated by the initial HW ID and controlled by the same driver(s).</P>
	<P>Each INF-writer-defined <I>models-section-name</I> must be referenced in the <B>Manufacturer</B> section of the INF file. There can be one or more entries in any per-manufacturer <I>Models</I> section, depending upon how many devices (and drivers) the INF file installs for a particular manufacturer.</P>
	</DD>

	<B>Entries and values</B>

	<DL>
		<DT><P><I><A NAME=KWD_DeviceDesc>
		device-description</A></I></DT>
			<DD>Identifies a device to be installed, expressed as any unique combination of explicitly visible characters or as a <A HREF="#KWD_StringToken"><B>%</B><I>strkey</I><B>%</B></A> token defined in a <A HREF="#KWD_Strings"><B>Strings</B></A> section of the INF file.</DD>

		<DT><I><A NAME=KWD_InstSect>
		install-section-name</A></I></DT>
			<DD>Specifies an INF-writer-determined name of the <A HREF="#KWD_DDInstall"><I><B>DDInstall</B></I></A> section for the device (and compatible models of device, if any). </DD>

		<DT><I><A NAME=KWD_HWID>
		hw-id</A></I></DT>
			<DD>Specifies a vendor-defined string that identifies a device, which the PnP Manager uses to find an INF-file match for this device. Such a hardware ID has one of the following formats:

		<DL>
			<DT><I>enumerator</I><B>\</B><I>enumerator-specific-device-id</I></DT>
				<DD>Is the typical format for individual PnP devices reported to the PnP Manager by a single enumerator. For example, USB\VID_045E&amp;PID_00B identifies the Microsoft HID keyboard device on a USB bus. Depending on the enumerator, such a specification can even include the device's hardware revison number as, for example, PCI\VEN_1011&amp;DEV_002&amp;SUBSYS_00000000&amp;REV_02. </DD>

			<DT><B>*</B><I>enumerator-specific-device-id</I></DT>
				<DD>Indicates with the asterisk (<B>*</B>) that the device is supported by more than one enumerator. For example, *PNP0F01 identifies the Microsoft serial mouse, which also has a <I>compatible-id</I> specification of SERENUM\PNP0F01. </DD>

			<DT><I>device-class-specific-ID</I></DT>
				<DD>Is an I/O bus-specific format, as described in the hardware specification for the bus, for the hardware IDs of all peripheral devices on that type of I/O bus. </DD>
		</DL>
	
		<DD><P>Note that a single device can have more than one <I>hw-id</I> value. The PnP Manager uses each such <I>hw-id</I> value, which is usually provided by the underlying bus when it enumerates its child devices, to create a subkey for each such device in the registry .<B>.Enum</B> branch. For manually installed devices, the system's setup code uses their <I>hw-id</I> values as specified in their respective INF files to create each such registry subkey.</DD>

		<DT><I>compatible-id</I></DT>
			<DD>Specifies a <I>hw-id</I> value compatible with that designated by the given <I>hw-id</I>. Any number of <I>compatible-id</I> values can be specified for an entry in the <I>Models</I> section, each separated from the next by a comma (<B>,</B>). All such compatible devices and/or device models are controlled by the same driver as the device designated by the initial <I>hw-id</I>.</DD>

		<DT><B><P>See Also</B></DT>
			<DD><B><A HREF="AC97SMPL.HTML#LP_MODEL_SECT" TARGET="LP_INFSRC">[<I>Models</I>]</A></B> section in the INF, <B><A HREF="RP_INFDEF_MODEL.HTML">[<I>Models</I>]</A></B> section described.</DD>
	</DL>
</DL>


<!!!>
<!!!	N	!!!>
<!!!>
<H3><P><BR><BR><A NAME=N>	N	</A></H3>

<DL>
	<DT><B><P><A NAME=KWD_Needs>
	Needs
	</A>=</B><I>inf-section-name</I>[<B>,</B><I>inf-section-name</I>]...</DT>

		<DD>This optional entry specifies the particular section(s) within the given INF file(s) that must be processed during the installation of this device. Typically, such a named section is a <I><B><A HREF="#KWD_DDInstall">DDInstall</A></B></I> (or <I>DDInstall</I><B>.</B><I>xxx</I>) section within one of the INF file(s) listed in an <B><A HREF="#KWD_Include">Include</A></B> entry. However, it can be any section that is referenced within such a <I>DDInstall</I> or <I>DDInstall</I><B>.</B><I>xxx</I> section of the included INF. 
		<P>For example, the INFs for device drivers that have the preceding <B>Include</B> entry specify this entry as <BR>
		<P><B>Needs= KS.Registration</B>[<B>, KSCAPTUR.Registration</B> | <BR>
		&nbsp;&nbsp;&nbsp;&nbsp;<B>KSCAPTUR.Registration.NT,</B> <B>MSPCLOCK.Installation</B>] 
		</DD>

	<DL>
		<DT><P><B>See Also</B></DT>
			<DD><B><A HREF="AC97SMPL.HTML#LP_NEEDS_DEF" TARGET="LP_INFSRC">Needs</A></B> directive in the INF.</DD>
	</DL>

</DL>


<!!!>
<!!!	O	!!!>
<!!!>
<H3><P><BR><BR><A NAME=O>	O	</A></H3>



<!!!>
<!!!	P	!!!>
<!!!>
<H3><P><BR><BR><A NAME=P>	P	</A></H3>
<DL>
	<DT><B><A NAME=#KWD_Provider>
	Provider</A>=%</B><I>INF-creator</I><B>%</B>
	</DT>

	<DD>Identifies the provider of the INF file. Typically, this is specified as an <B>%</B><I>OrganizationName</I><B>%</B> token that is expanded later in the INF's <B><A HREF="#KWD_Strings">Strings</A></B> section. 

	<P>For example, INFs supplied with the system typically specify the <I>INF-creator</I> as <B>%</B>Msft<B>%</B> and define <B>%</B>Msft<B>% = "</B>Microsoft<B>"</B> in their <B>Strings</B> sections. 
	</DD>
</DL>


<!!!>
<!!!	Q	!!!>
<!!!>
<H3><P><BR><BR><A NAME=Q>	Q	</A></H3>



<!!!>
<!!!	R	!!!>
<!!!>
<H3><P><BR><BR><A NAME=R>	R	</A></H3>

<DL>
	<DT><A NAME=KWD_RegKeys><B>
	RegKeys
	</B></A></DT>
	
	<DD>
	Registry keys are roots of the registry tree; the subkeys are the paths in the tree to the target value. The value of a registry key can be one of the following: 
		<DL>
			<DT><B><A NAME=KWD_KHCR>
			HKCR</A></B></DT>
				<DD>Abbreviation for <B>HKEY_CLASSES_ROOT</B>.</DD>

			<DT><B><A NAME=KWD_HKCU>
			HKCU</A></B></DT>
				<DD>Abbreviation for <B>HKEY_CURRENT_USER</B>.</DD>

			<DT><B><A NAME=KWD_HKLM>
			HKLM</A></B></DT>
				<DD>Abbreviation for <B>HKEY_LOCAL_MACHINE</B>.</DD>

			<DT><B><A NAME=KWD_HKU>
			HKU</A></B></DT>
				<DD>Abbreviation for <B>HKEY_USERS</B>.</DD>

			<DT><B><A NAME=KWD_HKR>
			HKR</A></B></DT>
				<DD>Relative to the registry key most pertinent to the section in which the <B><A HREF="#KWD_AddReg">AddReg</A></B> directive appears, such as the per-device "hardware" subkey in the registry <B>..\Enum\</B><I>enumeratorID</I><B>\</B><I>device-instance-id</I> branch, the corresponding driver-specific "software" subkey under the registry <B>..Class\</B><I>SetupClassGUID</I><B>\</B><I>device-instance-id</I> branch, and so forth.</DD>
		</DL>
	</DD>
</DL>


<!!!>
<!!!	S	!!!>
<!!!>
<H3><P><BR><BR><A NAME=S>	S	</A></H3>
<DL>
	<P><BR><BR><DT><A NAME=KWD_SIGNATURE><B>
	Signature</B>=<I>"signature-name"</I>
	</A></DT>

	<DD>Can be any of <I>$Windows NT$</I>, <i>$Chicago$</I>, or <I>$Windows 95$</I>. The enclosing $ are required but these strings are otherwise case-insensitive. If the signature-name is none of these string values, the file is not accepted as a valid INF. 
	<P>If an INF is used to install device(s)/driver(s) on both Windows 9x and Windows 2000 platforms, it must designate any OS-specific installation information by appending system-defined extension(s) to its DDInstall section(s), whether the signature-name is $Windows NT$, $Chicago$, or $Windows 95$. 
	<DL>
		<DT><P><B>See Also</B></DT>
		<DD><A HREF="AC97SMPL.HTML#LP_SIG_DEF" TARGET="LP_INFSRC"><B>Signature</B></A> entry in the INF,
		<B><A HREF="RP_INFDEF_VERDEF.HTML#KWD_Signature">Signature</A></B> value described.
		</DD>
	</DL>
	</DD>
</DL>

<DL>
	<DT><P><BR><BR><A NAME=KWD_SrcDisksFiles><B>
	[SourceDisksFiles]
	</A></B> | <B>[SourceDisksFiles.x86]</B><BR>&nbsp;<BR></DT>

	<DD><I>filename</I><B> =</B> <I>diskid</I>[<B>,</B>[ <I>subdir</I>][<B>,</B> <I>size</I>]]<BR>...</P></DD>

	<DD><P>A <B>SourceDisksFiles</B> section names the source files used during installation, identifies the source disks (or CD-ROM discs) that contain those files, and provides the path to the subdirectories, if any, on the distribution disks containing individual files. </P></DD>

	<DL>
		<P><B>Entry Values</B>
		<DT><I><A NAME=KWD_Filename>filename</A></I></DT>
		<DD>Specifies the name of the file on the source disk.</DD>

		<DT><I>diskid</I></DT>
		<DD>Specifies the integer identifying the source disk that contains the file. This value and the initial <I>path</I> to the <I>subdir</I>(ectory), if any, containing the named file must be defined in a <B>SourceDisksNames</B> section of the same INF. </DD>

		<DT><I>subdir</I></DT>
		<DD>This optional value specifies the subdirectory (relative to the <B>SourceDisksNames</B> <I>path</I> specification, if any) on the source disk where the named file resides.<P>If this value is omitted from an entry, the named source file is assumed to be in the root directory or in the <I>path</I> directory that was specified in the <B>SourceDisksNames</B> section for the given disk.</DD>

		<DT><I>size</I></DT>
		<DD>This optional value specifies the uncompressed size, in bytes, of the given file.</DD>

		<DT><P><B>See Also</B></DT>
		<DD><B><A HREF="AC97SMPL.HTML#LP_SRCDSKFL_SECT" TARGET="LP_INFSRC">[SourceDisksFiles]</A></B> section in the INF file, <B><A HREF="RP_INFDEF_SRCDSKFL.HTML">[SourceDisksFiles]</A></B> section described.</DD>
	</DL>
</DL>


<DL>
	<DT><P><BR><BR><A NAME=KWD_SrcDisksNames><B>
	[SourceDisksNames]</B></A> | <B>[SourceDisksNames.x86]</B></DT><BR><BR>

	<DD><I>diskid</I> <B>=</B> <B>%</B><I>strkey</I><B>%</B> | [<B>"</B>]<I>disk-description</I>[<B>"</B>][<B>,</B>[<I>tagfile</I>][<B>,</B><I>unused</I><B>,</B><I>path</I>]]<BR>...</DD>

	<P>A <B>SourceDisksNames</B> section identifies the distribution disk(s) or CD-ROM disc(s) that contain the source files to be transferred to the target machine during installation. </P>

	<DL>
		<P><B>Entry Values</B>
		<DT><I><A NAME=KWD_DiskID>diskid</A></I></DT>
		<DD>Specifies a nonnegative integer that identifies a source disk. This value can be expressed in decimal or in hexadecimal notation, but it cannot require more than four bytes of storage. If there is more than one source disk for the distribution, each <I>diskid</I> entry in this section must have a unique value, such as <B>1</B>, <B>2</B>, <B>3</B>,... or <B>0x0</B>, <B>0x1</B>, <B>0x2</B>,... and so forth. </DD>

		<DT><I>disk-description</I></DT>
		<DD>Specifies a <B>%</B><I>strkey</I><B>%</B> token or a <B>"</B><I>quoted string</I><B>"</B> that describes the contents and/or purpose of the disk identified by <I>diskid</I>. The installer can display the value of this string to the end user during installation, for example, to identify a source disk to be inserted into a drive at a particular stage of the installation process. 
		<P>Every <B>%</B><I>strkey</I><B>%</B> specification in this section must be defined in the INF's <B>Strings</B> section. Any <I>disk-description</I> that is not a <B>%</B><I>strkey</I><B>%</B> token is a user-visible string that must be delimited by double-quote characters (<B>"</B>) if it has any leading or trailing spaces. 
		</DD>

		<DT><I>tagfile</I></DT>
		<DD>This optional value specifies the name of a tag file supplied on the distribution disk, either in the root directory or in the given <I>path</I> subdirectory, if any, of the disk. The value should specify only the filename, not any directory or subdirectory.
		<P>Setup uses a tag file to verify that the user inserted the correct installation disk. Tag files are only used for removeable media. 
		<P>A vendor can also use a tag file to contain a "cabinet" of compressed installation files. If <I>tagfile</I> has the extension <B>.cab</B>, Setup uses it as a tag file <I>and</I> as a source of installation files.
		</DD>

		<DT><I>unused</I></DT>
		<DD>This is not used on Windows&nbsp;2000. This value is only used in Windows 9x. See the Windows 98 DDK documentation for further information.</DD>

		<DT><I>path</I></DT>
		<DD>This optional value specifies the path to the directory on the distribution disk containing source files, including the <I>tagfile</I> if any. The <I>path</I> is relative to the root and is expressed as <B>\</B><I>dirname1</I><B>\</B><I>dirname2</I>... and so forth. If this value is omitted from an entry, files are assumed to be in the root directory of the distribution disk. 
		<P>Subdirectories containing particular source files can be specified relative to a given <I>path</I> directory in the corresponding <B>SourceDisksFiles</B> section of the INF file. However, any <I>tagfile</I> supplied on the distribution disk must reside either in the given <I>path</I> directory or, if <I>path</I> is omitted, in the root directory.
		</DD>

		<DT><P><B>See Also</B></DT>
		<DD><B><A HREF="AC97SMPL.HTML#LP_SRCDSKNM_SECT" TARGET="LP_INFSRC">[SourceDisksNames]</A></B> section in the INF file, <B><A HREF="RP_INFDEF_SRCDSKNM.HTML">[SourceDisksNames]</A></B> section described.</DD>
	</DL>
</DL>



<DL>
	<P><BR><BR><DT><A NAME=KWD_Strings><B>
	[Strings] </B>|<B> [Strings</B>.LanguageID] ...
	</A></DT>

	<DD>
	<I>strkey1</I><B>=</B> [<B>"</B>]<I>some string</I>[<B>"</B>]<B><BR>
	</B><I>strkey2</I> <B>=</B>&nbsp;<B>"&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</B><I>string-with-leading-or-trailing-whitespace</I>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<B>"</B>  | <I><BR>
	</I>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<B>"</B><I>very-long-multiline-string </I><B>"</B> | <BR>
	&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<B>"</B><I>string-with-semicolon</I><B>"</B> | <B>"</B><I>string-ending-in-backslash</I><B>"</B> |<B><BR>
	</B>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<B>""</B><I>double-quoted-string-value</I><B>""</B><BR>
	 ...</P>
	<P>An INF file must have at least one <B>Strings</B> section to define every <A HREF="#KWD_StringToken">%<I>strkey</I>%</A> token specified elsewhere in that INF. 
	</DD>

	<DL>
		<P><B>Entry Values</B>
		<DT><I><A NAME=KWD_StringToken>strkey</A>1</I>, <I>strkey2</I>, ...</DT>
		<DD>Each strkey in an INF file must specify a unique name consisting of letters, digits, and/or other explicitly visible characters. A % character within such a strkey token can be expressed as %%.</DD>
		<P><DT><I>some string</I> | "<I>some string</I>"</DT>
		<DD>Specifies a string, optionally delimited with double-quote characters ("), that contains letters, digits, punctuation, and possibly even certain implicitly visible characters, in particular, internal space and/or tab characters. However, an unquoted string cannot contain an internal double-quote ("), semicolon (;), linefeed, return, or any invisible control characters, and it cannot have a backslash (\) as its final character.</DD>
	</DL>
	<DL>
		<DT><P><B>See Also</B></DT>
		<DD><A HREF="AC97SMPL.HTML#LP_STRINGS_SECT" TARGET="LP_INFSRC"><B>[Strings]</B></A> section in the INF,
		<A HREF="AC97SMPL.HTML#LP_STRINGSLOC_SECT" TARGET="LP_INFSRC"><B>[Strings.0407]</B></A> section in the INF,
		<B><A HREF="RP_INFDEF_Strings.HTML">[Strings]</A></B> section described.
		</DD>
	</DL>

</DL>


<!!!>
<!!!	T	!!!>
<!!!>
<H3><P><BR><BR><A NAME=T>	T	</A></H3>




<!!!>
<!!!	U	!!!>
<!!!>
<H3><P><BR><BR><A NAME=U>	U	</A></H3>


<!!!>
<!!!	V	!!!>
<!!!>
<H3><P><BR><BR><A NAME=V>	V	</A></H3>

<DL>
	<P><BR><BR><DT><A NAME=KWD_Version><B>
	[Version]</B></A></DT>

	<DD>
	<BR><B><A HREF="#KWD_Signature">Signature</A>="</B><I>signature-name</I><B>"</B><BR>
	[<B><A HREF="#KWD_Class">Class</A>=</B><I>class-name</I>]<I><BR>
	</I>[<B><A HREF="#KWD_ClassGUID">ClassGuid</A>={</B><I>nnnnnnnn</I><B>-</B><I>nnnn</I><B>-</B><I>nnnn</I><B>-</B><I>nnnn</I><B>-</B><I>nnnnnnnnnnnn</I><B>}</B>]<I><BR>
	</I>[<B><A HREF="#KWD_Provider">Provider</A>=%</B><I>INF</I>-<I>creator<B>%</B></I>]<I><BR>
	</I>[<B><A HREF="#KWD_LayoutFile">LayoutFile</A>=</B><I>filename</I><B>.inf</B><I> </I>[<B>,</B><I>filename</I><B>.inf</B>]... ]<BR>
	[<B>CatalogFile=</B><I>filename</I><B>.cat</B>]<BR>
	[<B>CatalogFile.nt=</B><I>unique-filename</I><B>.cat</B>]<BR>
	[<B>CatalogFile.ntx86=</B><I>unique-filename</I><B>.cat</B>]<BR>
	<B><A HREF="#KWD_DriverVer">DriverVer</A>=</B><I>mm/dd/yyyy</I>[<B>,</B><I>x.y.v.z</I>] <BR>
	</P>
	By convention, the Version section appears first in INF files. Every INF file must have this section. 
	<P><I>(Click on each of the entries to go to their respective glossary entry.)</I>
	</DD>

	<DL>
		<P><DT><B>See Also</B></DT>
		<DD><I>Setup, Plug & Play, Power Management</I> in the Windows 2000 DDK.</DD>
	</DL>
</DL>


<!!!>
<!!!	W	!!!>
<!!!>
<H3><P><BR><BR><A NAME=W>	W	</A></H3>

<DL>

	<DT><P><BR><BR><B><A NAME=KWD_WV">
	Wave</A></B>

	<DD>
	audio format
	</DD>


</DL>


<!!!>
<!!!	X	!!!>
<!!!>
<H3><P><BR><BR><A NAME=X>	X	</A></H3>


<!!!>
<!!!	Y	!!!>
<!!!>
<H3><P><BR><BR><A NAME=Y>	Y	</A></H3>




<!!!>
<!!!	Z	!!!>
<!!!>
<H3><P><BR><BR><A NAME=Z>	Z	</A></H3>


</BODY>
</HTML>
